<?php
/************************
* Simple News Engine 0.2.3
* author: Ragnaar <ragnaar@km.ru>
* home: http://code.google.com/p/sne-news
* date: 08.06.2011
*********************/
defined( '_VALID_SNE' ) or die( 'Direct Access to this location is not allowed.' );

function hdate($MySqlDate, $mnames, $template){
    $date_array = explode(" ", $MySqlDate);
    $date_array = explode("-", $date_array[0]); // split the array

    $var_year = $date_array[0];
    $var_month = $mnames[(int)$date_array[1]];
    $var_day = ltrim($date_array[2], "0");

    $template = str_replace('{d}', $var_day, $template);
    $template = str_replace('{m}', $var_month, $template);
    $template = str_replace('{y}', $var_year, $template);

    return $template;
}

function redirect($url){
    if (headers_sent()) {
        echo "<script>document.location.href='$url';</script>\n";
    } else {
        header( "Location: ". $url );//переходим на новый урл
    }
}

function hideimg($hide_img, $id, $page, $action) {
    global $dbprefix;
    foreach ($hide_img as $key => $hide) {
        $rows = mysql_query(prefix("SELECT `pub` FROM `{prefix}images` WHERE `id` = $hide", $dbprefix)); //получаем новость выбранную новость
        $row = mysql_result($rows, 0);

        if ($row == 1){
            $pub = 0;
        } else {
            $pub = 1;
        }
        mysql_query(prefix("UPDATE `{prefix}images` SET `pub` = $pub WHERE `id` = $hide", $dbprefix));
    }
    $url = "adm.php?action=".$action."&id=".$id."&p=".$page; // редиректим сюда
    redirect($url);
}

function addimg($add_img, $id){
    global $dbprefix;
    foreach($add_img as $add) {
        $query = prefix("INSERT INTO `{prefix}images` (`name`, `title`, `description`, `pub`, `news_id`) VALUES ('$add','', '', '1', '$id')", $dbprefix);
        $result = mysql_query($query) or die('can\'t add');
    }
    mysql_query(prefix("UPDATE `{prefix}news` SET `image` = '1' WHERE `id` = $id", $dbprefix)); //ставим в новость метку что картинки есть
}

function delimg($del_img, $id, $page, $num_imgs, $action){
    global $dbprefix;
    foreach($del_img as $key => $del) {
        $rows = mysql_query(prefix("SELECT `name` FROM `{prefix}images` WHERE `id` = $del", $dbprefix)); //получаем имя файла удаляемой картинки
    	$row = mysql_result($rows, 0);

    	$thumb_file = getcwd().DIRECTORY_SEPARATOR."thumb".DIRECTORY_SEPARATOR.$row;
    	$image_file = getcwd().DIRECTORY_SEPARATOR."image".DIRECTORY_SEPARATOR.$row;

    	if (file_exists($thumb_file)) {
            unlink ($thumb_file); // удаляем с диска
        }
    	if (file_exists($image_file)) {
            unlink ($image_file);
        }
        mysql_query(prefix("DELETE FROM `{prefix}images` WHERE `id` = $del", $dbprefix)); //удаляем из базы
    }
    if ($num_imgs == count($del_img)) {
        mysql_query(prefix("UPDATE `{prefix}news` SET `image` = '0' WHERE `id` = $id", $dbprefix)); //ставим в новость метку что картинок нет
        if ($action == "image"){
            $url = "adm.php?p=".$page; // редиректим сюда
        } else {
        	$url = "adm.php?action=".$action."&id=".$id."&p=".$page; // редиректим сюда
        }
    } else {
        $url = "adm.php?action=".$action."&id=".$id."&p=".$page; // редиректим сюда
    }
    redirect($url);
}

function prefix($query, $dbprefix){
    return str_replace('{prefix}', $dbprefix, $query);
}

function pager($total, $per_page, $current_page, $pager_url){
    $scroll_page = 10; //Количество страниц в навигации
    //$per_page - Количество ссылок на странице
    //$current_page - Текущая страница
    //$pager_url - Формирование ссылки для перехода по страницам
    $inactive_page_tag = 'id="current_page"'; //Метка для текущей страницы
    $previous_page_text = _SNE_PREV; //Текст для перехода назад
    $next_page_text = _SNE_NEXT; //текст для перехода вперед
    $first_page_text = _SNE_FIRST; //Текст для перехода к первой странице
    $last_page_text = _SNE_LAST; //Текст для перехода к последней странице
    $pager_url_last = "";

    $kgPagerOBJ = new kgPager();
    $kgPagerOBJ -> pager_set($pager_url, $total, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text, $pager_url_last);

    echo '<div class="spage">';
    if ($current_page > 1){
        echo $kgPagerOBJ->first_page;
        echo $kgPagerOBJ->previous_page;
    }
    echo $kgPagerOBJ->page_links;
    if ($current_page * $per_page < $total){
        echo $kgPagerOBJ->next_page;
        echo $kgPagerOBJ->last_page;
    }
    echo '</div>';
}

// Защита от XSS 
function _filter( $var , $sql = 0) { 
  
    $var = strip_tags($var); 
    $var = str_replace ("\n","", $var); 
    $var = str_replace ("\r","", $var); 
    $var = htmlentities($var); 
    if ($sql == 1) {  
        $var = mysql_real_escape_string($var); 
    } 
    return $var; 
}
?>